// 文件路径: dbms/cluster/ClusterResponse.java
package com.dbms.cluster;

import com.dbms.common.QueryResult;
import java.io.Serializable;

/**
 * 用于集群节点之间通信的响应对象 (Response DTO)。
 * 这个对象同样是可序列化的，用于将远程执行的结果从数据节点传回协调节点或客户端。
 * 它封装了在数据节点上执行SQL后生成的 QueryResult 对象。
 */
public class ClusterResponse implements Serializable {
    // 序列化版本ID
    private static final long serialVersionUID = 1L;

    // 封装了SQL执行的结果，包括成功/失败状态、消息、返回的数据等
    private final QueryResult queryResult;

    /**
     * ClusterResponse 的构造函数。
     * @param queryResult 在远程节点上执行SQL后得到的结果。
     */
    public ClusterResponse(QueryResult queryResult) {
        this.queryResult = queryResult;
    }

    /**
     * 获取封装的查询结果。
     * @return QueryResult 对象。
     */
    public QueryResult getQueryResult() {
        return queryResult;
    }
}